From 2f6d60d6af40d7c20550c278334a07f1cac5da05 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Timm=20B=C3=A4der?= Date: Sun, 29 Jan 2017 17:55:00 +0100 Subject: [PATCH] stack: Fix node position during crossfade --- gtk/gtkstack.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/gtk/gtkstack.c b/gtk/gtkstack.c index 083c19990e..b1617297c4 100644 --- a/gtk/gtkstack.c +++ b/gtk/gtkstack.c @@ -1919,11 +1919,16 @@ gtk_stack_snapshot_crossfade (GtkWidget *widget, if (priv->last_visible_node) { - graphene_matrix_t identity; + graphene_matrix_t translate; - graphene_matrix_init_identity (&identity); + graphene_matrix_init_translate (&translate, + &GRAPHENE_POINT3D_INIT ( + priv->last_visible_surface_allocation.x, + priv->last_visible_surface_allocation.y, + 0) + ); - gtk_snapshot_push_transform (snapshot, &identity, "CrossFadeStart"); + gtk_snapshot_push_transform (snapshot, &translate, "CrossFadeStart"); gtk_snapshot_append_node (snapshot, priv->last_visible_node); gtk_snapshot_pop (snapshot); } -- 2.30.2